#ifndef __10_LIB_H__
#define __10_LIB_H__
typedef struct node{
	int data;
	struct node* next;
} node,* nodep;
nodep* InitStack(void);
void SetEmptyStack(nodep* p);
int IsEmptyStack(nodep* p);
void StackPush(nodep* p,int data);
int StackPop(nodep* p);
int ShowTop(nodep* p);
int StackLength(nodep* p);

typedef struct queue
{
	nodep front;
	nodep rear;
}queue,* queuep;
queuep InitQueue(void);
int IsEmptyQueue(queuep q);
void SetEmptyQueue(queuep q);
int IsFull(queuep q);
void PushQueue(queuep q,int v);
int OutQueue(queuep q);
int ShowFront(queuep q);
int QueueLength(queuep q);
void PrintQueue(queuep q);
#endif
